const db = require("../db/index")

// 获取文章分类
exports.getArticleCates = (req, res) => {
    const sql = "select * from ev_article_cate where is_delete=0 order by id asc";
    db.query(sql, function (err, result) {
        if (err)
            return res.cc(err)
        res.send({
            status: 200,
            message: "获取文章分类成功",
            data: result
        })
    })
}

// 新增文章分类
exports.addArticleCates = (req, res) => {
    // 1. 查重：检查分类名称和别名是否已存在
    const sql = "select * from ev_article_cate where name=? or alias=?";
    db.query(sql, [req.body.name, req.body.alias], (err, result) => {
        if (err) return res.cc(err)
        
        // 分类名称和别名都被占用
        if (result.length === 2) {
            return res.cc("分类名称与别名被占用，请更换后重试！")
        }
        // 分类名称被占用
        if (result.length === 1 && result[0].name === req.body.name) {
            return res.cc("分类名称已存在，请更换后重试！")
        }
        // 分类别名被占用
        if (result.length === 1 && result[0].alias === req.body.alias) {
            return res.cc("分类别名已存在，请更换后重试！")
        }

        // 2. 插入新的文章分类
        const insertSql = "insert into ev_article_cate set ?"
        db.query(insertSql, req.body, (err, result) => {
            if (err) return res.cc(err)
            if (result.affectedRows !== 1) return res.cc("新增文章分类失败！")
            res.cc("新增文章分类成功！", 200)
        })
    })
}

// 删除文章分类
exports.deleteArticleCate = (req,res)=>{
    const sql = "update ev_article_cate set is_delete=1 where id=?"
    db.query(sql,req.params.id,(err,result)=>{
        if(err) return res.cc(err)
        if(result.affectedRows !== 1) return res.cc("删除文章分类失败！")
        res.cc("删除文章分类成功！",200)
    })
}





